package algorithm;

/**
 * 给定一个数组，它的第 i 个元素是一支给定股票第 i 天的价格。
 * 如果你最多只允许完成一笔交易（即买入和卖出一支股票），设计一个算法来计算你所能获取的最大利润。注意你不能在买入股票前卖出股票
 * @author rongkai
 * @description:
 * @date 2021/3/5
 */
public class Solution3 {

    public static void main(String[] args) {
        int[] prices = {7, 1, 5, 3, 6, 4};
        System.out.println(maxProfit(prices));
    }

    /**
     * 解题思路：如果存在今天比昨天价格高就卖出，否则就保持不变
     * @param prices
     * @return
     */
    public static int maxProfit(int[] prices){
        int profit = 0;
        for (int i = 1;i<prices.length;i++){
            int tempProfit = prices[i] - prices[i-1];
            if (tempProfit > 0){
                System.out.println(tempProfit);
                profit = profit+tempProfit;
            }
        }
        return profit;
    }
}
